package com.study.happystudy.service;

import com.study.happystudy.po.Activity;
import com.study.happystudy.po.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ActivityService {
    /**
     * 1. 添加活动
     */
    void addActivity(@Param("title") String title,
                     @Param("imageUrl") String imageUrl,
                     @Param("content") String content,
                     @Param("startTime") String startTime,
                     @Param("endTime") String endTime);

    /**
     * 2. 删除活动
     */
    void deleteActivityById(@Param("activityId") int activityId);

    /**
     * 3. 修改活动
     */
    public void updateActivity( String title, String imageUrl, String content, String startTime, String endTime, int activityId);


    /**
     * 4. 根据id返回活动
     */
    Activity getActivityById(@Param("activityId") int activityId);

    /**
     * 5. 根据活动id返回参加活动的用户
     */
    List<User> getUsersByActivityId(@Param("activityId") int activityId);

    /**
     * 6. 返回所有活动
     */
    List<Activity> getAllActivities();

    /**
     * 7. 返回所有未开始活动
     */
    List<Activity> getUnstartedActivities();

    /**
     * 8. 返回所有进行中的活动
     */
    List<Activity> getOngoingActivities();

    /**
     * 9. 返回所有已结束活动
     */
    List<Activity> getFinishedActivities();

    /**
     * 10. 判断用户是否在活动
     */
    Integer isUserInActivity(@Param("userId") int userId, @Param("activityId") int activityId);
}
